package model.commandes;

import model.document.Document;
import model.document.Section;
import model.document.SectionNonVide;

public class DegraderRecursivement implements Commande {

	@Override
	public void visit(Document document) {
		Section temp = document.getSectionCourante();
		Section parent = temp.getSectionParente();
		//creation de la section intermediaire
		Section lien = new SectionNonVide();
		//ajout de la section degradee a la section intermediaire
		lien.addSousSection(temp, 0);
		//modification de l'indentation de la section degradee et de ses sous sections
		temp.degraderRecursivement();
		//ajout de la section intermediaire a la section parente
		parent.addSousSection(lien, parent.getSousSections().indexOf(temp));
		//retrait de la section degradee des sous-sections de la section parente
		parent.remove(temp);

	}

}
